Many information processing systems are configured to replicate data from a storage system at one site to a storage system at another site. In some cases, such arrangements are utilized to support disaster recovery functionality within the information processing system. For example, an enterprise may replicate data from a production data center to a disaster recovery data center. In the event of a disaster at the production site, applications can be started at the disaster recovery site using the data that has been replicated to that site so that the enterprise can continue its business.
Data replication in these and other contexts can be implemented using asynchronous replication at certain times and synchronous replication at other times. For example, asynchronous replication may be configured to periodically transfer data in multiple cycles from a source site to a target site, while synchronous replication may be configured to mirror host writes from the source site to the target site as the writes are made at the source site. Source site and target site storage systems can therefore each be configured to support both asynchronous and synchronous replication modes.
Conventional approaches to data replication can be problematic under certain conditions. For example, in conjunction with a transition from an asynchronous replication mode to a synchronous replication mode, it is possible that an asynchronous replication operation may inadvertently overwrite more recent data that has been stored in a target site storage system as part of a synchronous replication operation. Such a transition from asynchronous to synchronous replication mode under conventional practice will therefore typically require temporary suspension of host input-output (IO) operations for the duration of the transition, or extensive use of storage device extent locks throughout the transition. Such arrangements undermine the efficiency of the data replication process. This can in turn make it difficult to achieve a desired recover point objective within the information processing system.